package com.cloudlinkin.fp.save.kit;

import java.util.HashSet;
import java.util.Set;

import com.haotian.redis.basic._RedisQueue;
import com.haotian.redis.config._RedisConfig;

import redis.clients.jedis.HostAndPort;

public enum _RedisKit {
	instance;

	private _RedisQueue queue = null;

	private _RedisKit() {

		_RedisConfig config = new _RedisConfig();
		Set<HostAndPort> nodes = new HashSet<>();

		// 此处实现配置文件注入--

		nodes.add(new HostAndPort("192.168.10.162", 6379));
		// 最小空闲
		config.setMinIdle(10);
		// 最大连接
		config.setMaxTotal(2000);
		// 获取一个连接做大的等待时间
		config.setMaxWaitMillis(3000);
		// 在borrow一个jedis实例时，是否提前进行validate操作；如果为true，则得到的jedis实例均是可用的；false提高效率
		config.setTestOnBorrow(false);
		// 获取连接池的时候 验证 false 提高效率 感觉和config.setMaxWaitMillis(3000);互斥
		// 我们可以自行捕获错误信息
		config.setTestOnReturn(false);

		// --

		queue = new _RedisQueue(nodes, null, 3000, config);
	}

	public _RedisQueue get_RedisQueue() {
		return queue;
	}
}
